package com.playwright.util.zhihu2toutiao;

import com.microsoft.playwright.*;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.List;

/**
 * @author liyanhao
 * @Date 2024-01-04 10:17
 */
public class GetHotInfo {

    public static void main(String[] args) {
//            extracted2();


    }
    public static class TransparentFullScreenFrame extends JFrame {

    }




    private static void extracted() {
        try {
            // 创建一个Robot对象，用于模拟用户输入
            Robot robot = new Robot();

            // 设置延迟，以确保目标窗口已打开并准备好接受点击
            Thread.sleep(2000); // 这个值可以根据实际情况调整

            // 定义要点击的位置，例如（x, y）坐标是相对于屏幕左上角的
            int x = 100; // 要替换为实际要点击位置的X坐标
            int y = 200; // 要替换为实际要点击位置的Y坐标

            // 模拟按下鼠标左键
            robot.mousePress(InputEvent.BUTTON1_MASK);

            // 延迟一点时间，模拟按住的时间
            Thread.sleep(100);

            // 抬起鼠标左键，完成点击动作
            robot.mouseRelease(InputEvent.BUTTON1_MASK);

            System.out.println("模拟点击了屏幕坐标(" + x + ", " + y + ")");

            // 注意：为了准确地点击到特定软件窗口中的按钮，通常需要先确定该按钮在屏幕上的绝对坐标
            // 这可以通过一些额外的工具或API（如Java的Swing或AWT组件定位）获取，或者结合图像识别等技术找到目标位置

        } catch (AWTException | InterruptedException e) {
            e.printStackTrace();
        }
    }


//    public static void main(String[] args) throws InterruptedException {
//        //使用gpt回答每个问题
////        popularArticles();
//        //对接文心一言
////        return extracted();
//
//
//        Robot robot = new Robot();
//
//
//
//    }


    /**
     * 抓取知乎热门文章
     *
     * @throws InterruptedException
     */
    private static void popularArticles() throws InterruptedException {
        try (Playwright playwright = Playwright.create()) {
            Page page = ZhiHuUtils.getPage(playwright);
            page.navigate("https://www.zhihu.com/hot");
            List<ElementHandle> similarElements = page.querySelectorAll(".HotItem-title");
            for (int i = 0; i < similarElements.size(); i++) {
                System.out.println(i + "==" + similarElements.get(i).textContent());  // 输出元素的文本内容
                //点击获取每个元素去通意千问获取答案
            }
        }
    }


}
